package com.ruoyi.order.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.List;

/**
 * 商品对象 tb_product
 * 
 * @author ruoyi
 * @date 2025-08-19
 */
public class TbProduct extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    private Long id;

    /** 商品类型ID */
    @Excel(name = "商品类型ID")
    private Long productTypeId;

    /** 商品编号--作废 */
    @Excel(name = "商品编号")
    private String productNo;

    /** 商品名称 */
    @Excel(name = "商品名称")
    private String productName;

    /** 商品别名 */
    @Excel(name = "商品别名")
    private String productOtherName;

    private List<TbProductSpecification> specificationList;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }

    public void setProductTypeId(Long productTypeId) 
    {
        this.productTypeId = productTypeId;
    }

    public Long getProductTypeId() 
    {
        return productTypeId;
    }

    public void setProductNo(String productNo) 
    {
        this.productNo = productNo;
    }

    public String getProductNo() 
    {
        return productNo;
    }

    public void setProductName(String productName) 
    {
        this.productName = productName;
    }

    public String getProductName() 
    {
        return productName;
    }

    public void setProductOtherName(String productOtherName) 
    {
        this.productOtherName = productOtherName;
    }

    public String getProductOtherName() 
    {
        return productOtherName;
    }

    public List<TbProductSpecification> getSpecificationList() {
        return specificationList;
    }

    public void setSpecificationList(List<TbProductSpecification> specificationList) {
        this.specificationList = specificationList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("productTypeId", getProductTypeId())
            .append("productNo", getProductNo())
            .append("productName", getProductName())
            .append("productOtherName", getProductOtherName())
            .append("createTime", getCreateTime())
            .append("createBy", getCreateBy())
            .toString();
    }
}
